package van.planifolia.work1;

import van.planifolia.ListConstant;

/**
 * Created by Intellij IDEA<br>
 *
 * @author Planifolia.Van
 * @version 1.0
 * @date 2022/11/6 14:03
 */
public class Filter {
    public static void main(String[] args) {
        System.out.println("过滤前:");
        // 过滤出所有姓 刘 的中国人 并且要年龄大于18,首先我们先没过滤前的信息
        ListConstant.peoples.forEach(System.out::println);
        System.out.println("过滤后:");
        // 使用Stream去进行过滤操作我们不妨使用其中的.filter方法，它内部需要的是一个 判断者 函数式接口
        ListConstant.peoples.stream()
                // 选出大于18岁的
                .filter(people -> people.getAge() > 18)
                // 选出中国的
                .filter(people -> "CN".equals(people.getAddress()))
                // 选出姓刘的
                .filter(people -> people.getName().startsWith("刘"))
                // 最后打印出来
                .forEach(System.out::println);
    }
}
